Loads a .NET assembly, creates an instance of the class, and calls the requested method. You can pass any number of parameters to the method call. Any public, non-static method is supported.
Only use this statement if you have Visual C# .NET or Visual Basic .NET experience.
Syntax
ExternalAssemblyCall("AssemblyPath", "ClassName", "MethodName", Parameters...)
Arguments
| Argument | Description |
|---|---|
| AssemblyPath | Full path to the assembly. |
| ClassName | Fully qualified class name to load, including namespaces. |
| MethodName | Public, non-static method to call. |
| Parameters | Optional parameters to pass to the method call, separated with commas. |
Return value
| Value | Description |
|---|---|
| Value | Method value. |
| Null | Method does not return a value. |
Return value types
The following value types can be returned to the called method and used in scripts.
| Category | Value type |
|---|---|
| Signed integers | 16-bit (short, Int16) |
| 32-bit (int, Int32) | |
| 64-bit (long, Int64) | |
| Unsigned integers | 16-bit (ushort, UInt16) |
| 32-bit (uint, UInt32) | |
| 64-bit (ulong, UInt64) | |
| Unicode characters | Individual characters (char) |
| Series of characters (string) | |
| .NET DateTime object | Object set to the system time and date |
Note: To return values from other .NET objects, create an override for ToString() that outputs the data from the objects in a formatted string. To access the object data in scripts, parse the string value returned by the ExternalAssemblyCall statement to retrieve the data items.
Example
ExternalAssemblyCall("%SCRIPTS%\\QAWProPixels.dll", "QAWProPixels.QAWProPixels", "GetPixelColor", 100, 150, 0)